home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 005 / stocks_1.arc / MAKSTKFL.DOC < prev    next >
Text File  |  1983-01-04  |  16KB  |  345 lines

  1.                  DOCUMENTATION FOR MAKSTKFL.BAS
  2.  
  3.                     Copyright 1983 BY Michael Csontos
  4.                                       3228 Livonia Center Road
  5.                                       Lima, New York 14485
  6.                                       January 4, 1983
  7.  
  8.  
  9.                              INTRODUCTION
  10.  
  11.       This program assists in the generation of data files for securities price
  12. and  volume  data. It is intended for use with other programs that will analyze
  13. and/or plot the data. The program is designed to use the Wall Street Journal or
  14. other  newspaper  financial  statistics pages for manual entry of the data into
  15. ASCII  sequential  files  accessable  to BASIC, EDLIN and other languages under
  16. PC-DOS.
  17.  
  18.       It includes a simple plotting routine, but the program PLTSTKFL.BAS by me
  19. is intended for serious plotting of the data files on an EPSON printer.
  20.  
  21.       I  have  written  another  companion  program named DAYLOG.BAS which will
  22. generate  forms  on  the  printer  for  use  in recording securities (or other)
  23. statistics.  These  three programs allow you to gather data from a library or a
  24. stack  of  newspapers that would be awkward to handle at the computer (DAYLOG),
  25. create data files (MAKSTKFL), and plot the data (PLTSTKFL).
  26.  
  27.       I  have  provided  no means of editing or correcting the files after they
  28. are  created.  While the DOS utility EDLIN is quite limited, it is adaquate for
  29. the  purpose.  Also  I have purposely avoided the use of the CLS (clear screen)
  30. command. While it may look more professional to start each segment with a blank
  31. sereen,  and  it  is  unfortunate  that  scrolling  is not smooth on a computer
  32. screen,  I like the ability to review for a few seconds what I have done before
  33. it vanishes completely. 
  34.  
  35.       All  data  entry is in decimal. I found it confusing to remember a format
  36. for  entering  fractions  with  the  numeric  keypad,  and easy to remember the
  37. decimal equivalents of eighths. A small calculator might be useful if you trade
  38. in  securities  traded  in  32nds  or 16ths.
  39.  
  40.       There  is  no  automatic  transfer from the end of one function to a menu
  41. (except  for the documentation read function). With the PC's <F2> key programed
  42. for  RUN and the keyboard buffer available I felt that it was not necessary. If
  43. you  finish  one  stock  file  and know which one you want next, you can key in
  44. something like  <F2><2><3><C><O><M><S><H><A><R><E>, and probably the first data
  45. entry, about as fast as the disk drive takes to reach that part of the program.
  46. This  is  as  easy  as  using another menu to get you there from the end of the
  47. program. 
  48.  
  49.       This  program  makes  reference  to or creates several other files listed
  50. below and explained later. 
  51.  
  52.            MAKSTKFL.DOC      which you are reading
  53.            UPDSTKFL.ALL      a list of all securities files
  54.            UPDSTKFL.DAT      a list of active securities files
  55.            TRANSFER.BAT      a batch file used to backup data files
  56.            ????????.DJA      data file created by MAKSTKFL
  57.            ????????.NYS        "   "     "     "      "
  58.            ????????.OTC        "   "     "     "      "
  59.            ????????.OPT        "   "     "     "      "
  60.            ????????.MUT        "   "     "     "      "
  61.  
  62.  
  63.                              PROGRAM OPERATION
  64.  
  65.       When  the  program  is  run it immediately checks for the presence of the
  66. files MAKSTKFL.DOC and UPDSTKFL.DAT. If they are present you are presented with
  67. a  menu  with  eight  selections. If these files are not on the active disk the
  68. selections that would use them are omitted.
  69.  
  70.       There  are  two  menus  presented.  The  first selects the function to be
  71. performed.  The second selects the type of security file to be used. The second
  72. menu is skipped when it is not needed.
  73.  
  74.       A description of the menu selections follows.
  75.  
  76.                              FIRST MENU - FUNCTION
  77.  
  78.            (1):  INSERT DATA
  79.  
  80.       If  a  securities  data file (specified by the second menu) exists on the
  81. active  disk  the  program finds its starting date, renames it to ????????.OLD,
  82. opens  a  new  file  with securities file name, allows you to enter data from a
  83. date you specify till the old file's starting date, then transfers the old data
  84. onto  the end of the new file. This allows you to extend your database backward
  85. in time.
  86.  
  87.            (2):  ADD DATA
  88.  
  89.       Using  an existing data file, the program finds the last entry date, then
  90. appends  data  you  enter  until  you tell it to stop by entering a code number
  91. (9999).
  92.  
  93.            (3):  NEW DATA
  94.  
  95.       The  program  will  open  a  new  file with a filename you specify and an
  96. extension  for  the  security type selected in the second menu. You specify the
  97. starting date and enter data until you enter the stop code 9999.
  98.  
  99.            (4):  DATE RANGE
  100.  
  101.       The  first and last dates in the specified security file are displayed on
  102. the screen. 
  103.  
  104.            (5):  REPORT
  105.  
  106.       All  data  for  the specified security is printed on the printer. This is
  107. useful if you have been entering data directly from a newspaper or data service
  108. and  have no written record. The format is easier to read than an EDLIN listing
  109. or a dump using the DOS TYPE command.
  110.  
  111.            (6):  SCREEN GRAPH
  112.  
  113.       This is an abbreviated version of PLTSTKFL directed to the screen for use
  114. as  a  quick check of recently entered data. While the data entry routines trap
  115. many  typographical  errors,  others  don't show up until an attempt is made to
  116. plot the data.
  117.  
  118.            (7):  UPDATE
  119.  
  120.       In order to use this function you must have a file called UPDSTKFL.DAT on
  121. the  active  disk.  You create this file in DOS with EDLIN UPDSTKFL.DAT or COPY
  122. CON:  UPDSTKFL.DAT.  It  is  simply a list of the files you want to update on a
  123. daily basis. An example of an EDLIN listing is:
  124.  
  125.            1:*TRANS.DJA
  126.            2: DELTAA.NYS
  127.            3: UNPAC,NYS
  128.            4: DOW8_508.NYS
  129.            5: BIOTECH.OTC
  130.  
  131.       The  program  will read this file line by line, retrieve the file listed,
  132. find the last date, allow you to enter the next day's data, then go to the next
  133. file  in the UPDSTKFL list. The program selects the proper data format from the
  134. extension of the filespec on the list.
  135.  
  136.       While  the  program will not permit more than one day's data to be enered
  137. at  a  time in this mode, if the skip code (8888) is entered the next date will
  138. be used, to allow for the skipping of holidays.
  139.  
  140.       It  may be convenient to have a file UPDSTKFL.ALL on the disk listing all
  141. stock  files  you  have created. It is considerably easier to delete lines from
  142. files with EDLIN than to type in filespecs without errors each time you want to
  143. change your updating cycle. Just copy UPDSTKFL.ALL to UPDATKFL.DAT and edit the
  144. DAT file.
  145.  
  146.             (8): DOCUMENTATION
  147.  
  148.       If  the  file  MAKSTKFL.DOC is present on the active disk, this mode will
  149. allow you to read it without leaving BASIC or reloading the program.
  150.  
  151.  
  152.                              SECOND MENU - SECURITY TYPE
  153.  
  154.       Selection  of the type of security is necessary for the convience of data
  155. entry, since the published tables present different types of information and in
  156. different  order  for various markets. All of the formats are based on listings
  157. in The Wall Street Journal.
  158.  
  159.            (1):   Dow Jones Averages
  160.  
  161.       This   is  for  the  entries  from  the  tables  of  30  INDUSTRIALS,  20
  162. TRANSPORTATION,  15  UTILITIES  and  65 STOCKS COMPOSITE AVERAGE data. The data
  163. file format is actually the same as for selection (2) but this allows for entry
  164. in  the  same  order  as  in  the  paper.  The entry order is CLOSE, HIGH, LOW,
  165. VOLUME.
  166.  
  167.       The data file is "date",volume,high,low,close.
  168.  
  169.            (2):   New York Stock Exchange
  170.  
  171.       Covers  the  data for the NYSE-Composite Transactions as well as New York
  172. Exchange  Bonds  and  Amex-Composite Tranactions. The order of entry is VOLUME,
  173. HIGH, LOW, CLOSE.
  174.  
  175.       The data file is "data",volume,high,low,close.
  176.  
  177.            (3):  Over the Counter Markets
  178.  
  179.       Data  entry  in  the  order  VOLUME,  BID, ASKED for NASDAQ quotes of the
  180. Over-the-Counter Markets.
  181.  
  182.       The data file is "date",volume,bid,asked,0.
  183.  
  184.            (4):  Options
  185.  
  186.       Listed Options Quotations data in the order NY CLOSE, CALLS, PUTS.
  187.  
  188.       It  is  important  for  options files that the last two characters of the
  189. filename  be  the  strike price of the option if this data is to be used by the
  190. program   PLTSTKFL.   An  example  is  BETHJA35  where  the  filespec  will  be
  191. BETHJA35.OPT.  In  plotting  options  data,  PLTSTKFL  extracts  the  last  two
  192. characters in the filename for use as a baseline in the plot. 
  193.  
  194.  
  195.       The data file is "date",0,call,put,close.
  196.  
  197.            (5):  Mutual Funds
  198.  
  199.       NET  ASSET  VALUE  and OFFER PRICE data entry for Mutual Fund data.
  200.  
  201.       The data file is "date",0,nav,offer,0
  202.  
  203.       The  data  file formats above are what you will see if you list the files
  204. with  DOS  [type]  or  EDLIN.  The  null  (0)  entries are used to allow common
  205. subroutines to be used for search or conversion of all of the data types.
  206.  
  207.                              FILE SELECTION
  208.  
  209.       After  you have specified a securities type, you will be presented with a
  210. list of the files of that type that are on the active disk. You must then enter
  211. the filename of the one you want. The filename may be any that is acceptable to
  212. DOS  except  in  the case of options, where the last two characters are used to
  213. record the strike price.
  214.  
  215.       {NOTE:  The filespec consists of [filename].[extension]. You are to enter
  216. the  eight  (or  less) character [filename]. The three character [extension] is
  217. supplied by the program.}
  218.  
  219.       If  you  enter  a  filename  that  is  on  the  disk  but not on the list
  220. displayed, you may add data to that file in the wrong format, causing confusion
  221. later.  Therefore check the filespec displayed in line 25 of the display before
  222. proceeding to enter data.
  223.  
  224.       .
  225.                              DATA ENTRY
  226.  
  227.       Once  the  program  is in a mode for data entry it will list the security
  228. dile  open on line 25, the date for the data to be entered and the type of data
  229. in  the  active screen area. The program uses BASIC INPUT statements so it will
  230. reject  some  data  entries such as characters and extra punctuation marks. The
  231. program  will  trap  some  errors  such as decimal points in volume entries and
  232. inappropriate  values for HIGH, LOW, and CLOSE relative to data already entered
  233. for that date.
  234.  
  235.       The  program  will  prompt  for  reentry of the data just entered. If the
  236. problem  is  with  data  entered earlier, enter the number 7777 and the program
  237. will  restart  the  data  entry  cycle with the same date. The program does not
  238. expect securities prices to change by more than 25% in one day. If this data is
  239. entered, it askes for a second <enter> to confirm it. 
  240.  
  241.       Once  the last data for a day is entered the program prompts for the next
  242. day's  data  and  there  is  no  way  to  retreive the previous data (see ERROR
  243. CORRECTION).  The  number 7777 may be entered for any field to restart the data
  244. cycle at the same date to correct errors that are caught before the last entry.
  245. If  the number 8888 is entered the program will skip to the next date and there
  246. will  be no item in the data file for the date so skipped. When the number 9999
  247. is entered the program ends the data entry mode. No data entry is made for that
  248. last date.
  249.  
  250.                              ERROR CORRECTION
  251.  
  252.       The data files created with this program use the following format:
  253.  
  254.            "date",data AA,data BB,data CC,data DD
  255.  
  256.       A typical EDLIN listing would look like:
  257.  
  258.         1:*"12-10-82",1234,22.375,21,22.125
  259.         2: "12-13-82",1324,22.875,21.5,22
  260.         3: "12-14-82",4231,20,19.125,21.25
  261.  
  262.       This  is  not  intended  to  be  a  tutorial on how to use EDLIN, but the
  263. procedure  for correcting a file is to exit BASIC (enter <SYSTEM>), start EDLIN
  264. (enter  <A:EDLIN  filespec>  if your DOS disk is in drive A and your data is in
  265. active drive B) and enter <L>. A listing similar to the above will appear. Find
  266. the date where the error occors. Enter the line number and the line will appear
  267. with  the  prompt below it. Use the DOS editing keys to correct the error, then
  268. exit EDLIN.
  269.  
  270.       With the error trapping routines of MAKSTKFL this procedure should seldom
  271. be necessary.
  272.  
  273.                             DATA BACKUP
  274.  
  275.       This  program  opens  all  files  for  output in the APPEND mode so it is
  276. difficult  to loose data. Nevertheless it is advisable to regularly backup your
  277. data.  The file TRANSFER.BAT is provided to simplify this procedure. It depends
  278. on  having  a  two  disk  system with the MAKSTKFL program, its associated data
  279. files, and TRANSFER.BAT all in drive B and the backup disk in drive A.
  280.  
  281.       If  you are using PLTSTKFL or other analysis program it is a good idea to
  282. use  the  disk  containing it as the backup disk for the following reason. When
  283. run, TRANSFER  will first erase all stock data files in drive A. This is useful
  284. because  if  the  files  are  updated  on  a  daily basis they will become very
  285. fragmented  by  the  DOS  disk  routines.  Since the copy command uses existing
  286. directory entries on the destination disk if they exist, they must be erased in
  287. order  to  get good disk utilization on the backup disk. Using the backup files
  288. with analysis programs should decrease disk drive activity.
  289.  
  290.       If  the disks are in the proper drives, TRANSFER will try to erase itself
  291. in  drive  A  as  a  precaution,  erase  securities  in  drive A, then copy all
  292. securities files in drive B to drive A.
  293.  
  294.       Since it is possible for this routine to distroy itself if misused, it is
  295. listed  below. You may recreate the file by editing this file if you are clever
  296. at that sort of thing.
  297.  
  298.            rem WARNING!!!
  299.            REM   This routine will erase all stock data files in drive A:.
  300.            rem   Be sure that this disk is in drive B:.
  301.            rem   The transfer is made from drive B: to drive A:.
  302.            rem As a precaution this transfer batch file will erase itself if it
  303.                  is in drive A:. 
  304.            pause  WARNING!  Press  <Ctrl>+<Break>  if  you  think  you  are  in
  305.                  trouble.
  306.            erase A:transfer.bat
  307.            erase a:*.dja
  308.            erase a:*.nys
  309.            erase a:*.otc
  310.            erase a:*.opt
  311.            erase a:*.mut
  312.            rem All stock data files will be transfered from B: to A:.
  313.            rem Be sure that the source disk is in drive B:
  314.            pause  and that the destination disk is in drive A:
  315.            copy *.dja A:
  316.            copy *.nys A:
  317.            copy *.otc A:
  318.            copy *.opt A:
  319.            copy *.mut A:
  320.  
  321.                              MISCELLANEOUS
  322.  
  323.       At  the  time  of  this  writing this program has quite a few rough edges
  324. which will have to be worked off by use. The error recovery procedures for disk
  325. and  printer  faults especially need work. It will be necessary to simulate all
  326. possible faults and trace the behavior of the software. However most of this is
  327. cosmetic,  since restarting the program (from <Ctrl>+<Break> if necessary) will
  328. solve  most  problems. The nature of the data entry and the ease of editing the
  329. files make this program tolerant of errors.
  330.  
  331.       Revisions  of  this  program and companion programs will be made avilable
  332. through the user groups that distribute this program.
  333.  
  334.                              ---***---
  335.  
  336.  
  337.  
  338.            The  program  MAKSTKPLT.BAS  and  its  associated
  339.            files  are  made freely available non-exclusively
  340.            for  distribution  to  the members of the Picture
  341.            City  Personal  Computer  Programmers'  Club  and
  342.            through software exchange with other users groups
  343.            as  long  as  the  author  and  (PC)^3  are fully
  344.            credited.
  345.